1. Field of the Invention
The present invention relates to a rendering apparatus, a rendering method and a rendering program, and, for example, to a rendering apparatus that parallel-processes a plurality of pixels at a time.
2. Description of the Related Art
In recent years, with the increase in operation speed of CPUs (Central Processing Unit), there has been an increasing demand for higher operation speed of image rendering apparatuses.
A rendering apparatus includes a rasterizer that decomposes an input graphic into pixels, a pixel processing unit that subjects the pixels to rendering operations, and a memory for reading/writing rendering results. In recent years, along with the development in CG (Computer Graphics) technology, complex pixel processing techniques have widely been used. Consequently, a load on the pixel processing unit becomes large. In order to cope with this, the pixel processing unit is configured to execute parallel processing. As the degree of parallel processing in the pixel processing unit increases, data transfer with a memory becomes a bottleneck due to the increase in processing speed. Thus, in order to increase the operation speed without making the data transfer bus complex, and to enhance the processing efficiency, Japanese Patent No. 2901945, for instance, proposes such a structure that pixel processing units are configured to execute parallel processing and a local memory is assigned to each of the pixel processing units.
In this method, however, the correspondence between the coordinates of pixels and the pixel processing units is predetermined. In other words, it is not possible for a rasterizer to monitor the processing condition of each pixel processing unit, and to input pixels to a pixel processing unit with the least load. As a result, there arises such a problem that a load tends to concentrate on a specific pixel processing unit, and it is difficult to equally distribute the load to the pixel processing units. In consideration of this, a structure in which one pixel processing unit is assigned to each of pixels is proposed, for instance, in Fuchs et al., “Fast Spheres, Shadows, Textures, Transparencies, and Image Enhancements in Pixel-Planes”, Computer Graphics (Proc. SIGGRAPH 85), Vol. 19, No. 3, pp. 111-120, 1985; and Fuchs et al., “Pixel-Planes 5: A Heterogeneous Multiprocessor Graphic System Using Processor-Enhanced Memories”, Computer Graphics (Proc. SIGGRAPH 89), Vol. 23, No. 3, pp. 79-88, 1989.
In the methods of the above documents, however, there is such a problem that the rendering apparatus will inevitably become a large-scale one, and these methods are not practical.